Intent prediction for dialogue generation

ABSTRACT

In certain embodiments, intent prediction and dialogue generation may be facilitated. In some embodiments, a chat initiation request may be obtained from a user. The latest activity information associated with the user may be provided to a prediction model to obtain a first set of predicted intents of the user. For each intent of the first set of predicted intents, a candidate question may be selected from a question set based on the candidate question matching the intent. In some embodiments, the candidate questions may be simultaneously presented on the chat interface.

RELATED APPLICATION(S)

This application is a continuation of U.S. Pat. Application No.17/543,106, filed Dec. 6, 2021, which is a continuation of U.S. Pat.Application No. 16/821,406, filed Mar. 17, 2020, which is a continuationof U.S. 16/821,008, filed Mar. 17, 2020, which claims the benefit ofpriority of U.S. Provisional Application No. 62/942,588, entitled“Pre-Chat Intent Prediction for Dialogue Generation,” filed Dec. 2,2019, which is hereby incorporated by reference herein in its entirety.

BACKGROUND OF THE INVENTION

Chatbots (e.g., a form of automated conversional artificialintelligence) enable a human user to message or chat with a computerthat “talks” like a human and, in some instances, get answers withoutnecessitating human interaction or independent searches by the user. Forexample, a chatbot may obtain context from the questions submitted bythe user or answers (or other comments) provided by the user during achat session and then propose solutions or answers to the user. Often,however, the user does not know what questions to ask the chatbot or howto phrase questions to the chatbot, which causes friction with respectto the user’s interactions with a chatbot service.

SUMMARY OF THE INVENTION

Aspects of the invention relate to methods, apparatuses, and/or systemsfor facilitating intent prediction, dialogue generation based on suchintent prediction, or training or configuration of neural networks orother prediction models to facilitate dialogue generation.

In some embodiments, a chat initiation request may be obtained from auser. The latest activity information associated with the user may beprovided to a prediction model to obtain predicted intents of the user.For each intent of the current intents, a candidate question may beselected from a question set based on the candidate question matchingthe intent. In some embodiments, upon loading of the chat interface orwithin ten seconds of the chat initiation request, the candidatequestions may be simultaneously presented on the chat interface. A userselection of a first question of the candidate questions may be obtainedvia the chat interface responsive to the presentation of the candidatequestions. In this way, for example, the user is able to choose one ormore of the presented questions to submit as the user’s own questionwithout needing to come up the question (or the phrasing of thequestion) or to understand how to phrase a question on the chatinterface.

In some embodiments, based on the user selection and the first questionmatching a first intent of the predicted intents, the first intent maybe provided as reference feedback for the prediction model. As anexample, the first intent may be used to update one or moreconfigurations of the prediction model (e.g., weights, biases, or otherparameters of the prediction model). In this way, for example, theprediction model may be trained or configured to generate more accuratepredictions.

Various other aspects, features, and advantages of the invention will beapparent through the detailed description of the invention and thedrawings attached hereto. It is also to be understood that both theforegoing general description and the following detailed description areexamples and not restrictive of the scope of the invention. As used inthe specification and in the claims, the singular forms of “a,” “an,”and “the” include plural referents unless the context clearly dictatesotherwise. In addition, as used in the specification and the claims, theterm “or” means “and/or” unless the context clearly dictates otherwise.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a system for facilitating conversational artificialintelligence, in accordance with one or more embodiments.

FIG. 2 shows a machine learning model configured to facilitate aconversation, in accordance with one or more embodiments.

FIG. 3 shows chat interfaces with respective lists of selectabledialogue items, in accordance with one or more embodiments.

FIG. 4 shows components of a personal assistance platform and theirinteractions with one another, in accordance with one or moreembodiments.

FIG. 5 shows a chart indicating various presentation orderings fordialogue items, in accordance with one or more embodiments.

FIG. 6 shows a flowchart of a method of facilitating pre-chat intentprediction and dialogue generation based on such intent prediction, inaccordance with one or more embodiments.

FIG. 7 shows a flowchart of a method of providing additional dialogueitems in response to negative feedback related to presented dialogueitems, in accordance with one or more embodiments.

FIG. 8 shows a flowchart of a method of generating category-based setsof predicted intents to facilitate dialogue generation, in accordancewith one or more embodiments.

DETAILED DESCRIPTION OF THE INVENTION

In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the embodiments of the invention. It will beappreciated, however, by those having skill in the art that theembodiments of the invention may be practiced without these specificdetails or with an equivalent arrangement. In other cases, well-knownstructures and devices are shown in block diagram form in order to avoidunnecessarily obscuring the embodiments of the invention.

FIG. 1 shows a system 100 for facilitating conversational artificialintelligence, in accordance with one or more embodiments. As shown inFIG. 1 , system 100 may include computer system 102, client device 104(or client devices 104 a-104 n), or other components. Computer system102 may include dialogue subsystem 112, model subsystem 114, feedbacksubsystem 116, presentation subsystem 118, or other components. Eachclient device 104 may include any type of mobile terminal, fixedterminal, or other device. By way of example, client device 104 mayinclude a desktop computer, a notebook computer, a tablet computer, asmartphone, a wearable device, or other client device. Users may, forinstance, utilize one or more client devices 104 to interact with oneanother, one or more servers, or other components of system 100. Itshould be noted that, while one or more operations are described hereinas being performed by particular components of computer system 102,those operations may, in some embodiments, be performed by othercomponents of computer system 102 or other components of system 100. Asan example, while one or more operations are described herein as beingperformed by components of computer system 102, those operations may, insome embodiments, be performed by components of client device 104. Itshould be noted that, although some embodiments are described hereinwith respect to machine learning models, other prediction models (e.g.,statistical models or other analytics models) may be used in lieu of orin addition to machine learning models in other embodiments (e.g., astatistical model replacing a machine learning model and anon-statistical model replacing a non-machine-learning model in one ormore embodiments).

In some embodiments, system 100 may facilitate a conversation with orassist a user via one or more prediction models. In some embodiments,system 100 may obtain one or more dialogue items via a prediction modeland cause the dialogue items to be presented on a user interface.Responsive to obtaining a user response to the dialogue itempresentation, system 100 may generate, based on the user response, aresponse to the user response and present the response on the userinterface. In some embodiments, intent classification (e.g., automatedassociation of text or actions to a specific goal or other intent) maybe performed on user activity information to determine the dialogueitems to be presented on the user interface. As an example, such intentclassification may be performed via a neural network (e.g., where itslast layer or other layer produces a probability distribution overclasses), a Naive Bayes model, or one or more other prediction models.

In some embodiments, system 100 may obtain the dialogue items byproviding user activity information associated with the user as input tothe prediction model to obtain one or more predicted intents of the user(e.g., predicted goals or other intents of the user) and obtaining thedialogue items based on the predicted intents. As an example, the useractivity information may be provided as input to the prediction modelresponsive to a chat initiation request from the user. As anotherexample, the user activity information may be provided as input to theprediction model on a periodic basis, in accordance to a schedule, orbased on one or more other automated triggers (e.g., upon login to aplatform service or other action of the user) to obtain one or moreoutputs from the neural network (e.g., via which predicted intentscoinciding with the chat initiation request are obtained). The useractivity information may include page view information related to pageviews of the user (e.g., the latest page views or other page views ofthe user), service interaction information related to interactions ofthe user with one or more services (e.g., the latest interactions orother interactions of the user), transaction information related totransactions of the user (e.g., the latest transactions or othertransactions of the user), or other user activity information (e.g.,chat session information related to a current chat session or prior chatsessions with the user, information related to upcoming travel or otherplans of the user, etc.).

In some embodiments, system 100 may obtain one or more predicted intentsof a user via a prediction model (e.g., based on user activityinformation associated with the user) and generate one or more dialogueitems for presentation on the chat interface based on the predictedintents. As an example, for each intent of the predicted intents, system100 may generate a dialogue item based on the intent and present thedialogue items on the chat interface. In some embodiments, system 100may select one or more dialogue items based on the predicted intents. Asan example, for each intent of the predicted intents, system 100 mayselect a dialogue item from a dialogue item set based on the dialogueitem matching the intent. As a further example, system 100 may obtain anintent set from the prediction model, where each intent of the intentset is associated with a probability of matching a current intent of theuser. System 100 may then select the predicted intents from the intentset based on the predicted intents being associated with higherprobabilities (e.g., higher confidence scores of matching a currentintent of the user) than one or more other predicted intents of theintent set.

In some embodiments, system 100 may train or configure a predictionmodel to facilitate a conversation with or assist one or more users. Insome embodiments, system 100 may obtain user activity informationassociated with a user (e.g., page view information, service interactioninformation, transaction information, or other user activityinformation) and provide such information as input to a prediction modelto generate predictions (e.g., related to an intent of the user, such asa goal of the user, a question or statement that the user intends tosubmit, etc.). System 100 may provide reference feedback to theprediction model, and the prediction model may update one or moreportions of the prediction model based on the predictions and thereference feedback. As an example, where the prediction model generatespredictions based on user activity information coinciding with a giventime period, one or more verified intents associated with such useractivities may be provided as reference feedback to the predictionmodel. As an example, a particular goal may be verified as the user’sintent (e.g., via user confirmation of the goal, via one or moresubsequent actions demonstrating such goal, etc.) when the user wasbrowsing one or more pages or taking one or more other actions via oneor more services. The foregoing user activities may be provided as inputto the prediction model to cause the prediction model to generatepredictions of the user’s intent, and the verified goal may be providedas reference feedback to the prediction model to update the predictionmodel. In this way, for example, the prediction model may be trained orconfigured to generate more accurate predictions.

In some embodiments, the foregoing operations for updating theprediction model may be performed with a training dataset with respectto one or more users (e.g., a training dataset associated with a givenuser to specifically train or configure the prediction model for thegiven user, a training dataset associated with a given cluster,demographic, or other group to specifically train or configure theprediction model for the given group, or other training dataset). Assuch, in some embodiments, subsequent to the updating of the predictionmodel, system 100 may use the prediction model to facilitate aconversation with or assist one or more users.

In some embodiments, the prediction model may include one or more neuralnetworks or other machine learning models. As an example, neuralnetworks may be based on a large collection of neural units (orartificial neurons). Neural networks may loosely mimic the manner inwhich a biological brain works (e.g., via large clusters of biologicalneurons connected by axons). Each neural unit of a neural network may beconnected with many other neural units of the neural network. Suchconnections can be enforcing or inhibitory in their effect on theactivation state of connected neural units. In some embodiments, eachindividual neural unit may have a summation function which combines thevalues of all its inputs together. In some embodiments, each connection(or the neural unit itself) may have a threshold function such that thesignal must surpass the threshold before it propagates to other neuralunits. These neural network systems may be self-learning and trained,rather than explicitly programmed, and can perform significantly betterin certain areas of problem solving, as compared to traditional computerprograms. In some embodiments, neural networks may include multiplelayers (e.g., where a signal path traverses from front layers to backlayers). In some embodiments, back propagation techniques may beutilized by the neural networks, where forward stimulation is used toreset weights on the “front” neural units. In some embodiments,stimulation and inhibition for neural networks may be more free-flowing,with connections interacting in a more chaotic and complex fashion.

As an example, with respect to FIG. 2 , machine learning model 202 maytake inputs 204 and provide outputs 206. In one use case, outputs 206may be fed back to machine learning model 202 as input to train machinelearning model 202 (e.g., alone or in conjunction with user indicationsof the accuracy of outputs 206, labels associated with the inputs, orwith other reference feedback information). In another use case, machinelearning model 202 may update its configurations (e.g., weights, biases,or other parameters) based on its assessment of its prediction (e.g.,outputs 206) and reference feedback information (e.g., user indicationof accuracy, reference labels, or other information). In another usecase, where machine learning model 202 is a neural network, connectionweights may be adjusted to reconcile differences between the neuralnetwork’s prediction and the reference feedback. In a further use case,one or more neurons (or nodes) of the neural network may require thattheir respective errors are sent backward through the neural network tothem to facilitate the update process (e.g., backpropagation of error).Updates to the connection weights may, for example, be reflective of themagnitude of error propagated backward after a forward pass has beencompleted. In this way, for example, the machine learning model 202 maybe trained to generate better predictions.

Subsystems 112-118

In some embodiments, dialogue subsystem 112 may obtain one or moredialogue items via a prediction model, and presentation subsystem 118may cause the dialogue items to be presented on a user interface for auser. Responsive to obtaining a user response to the dialogue itempresentation, dialogue subsystem 112 may generate a response to the userresponse, and presentation subsystem 118 may cause the response to bepresented on the user interface. In some embodiments, dialogue subsystem112 may generate the response (e.g., an answer to a selected question, aconfirmation of an action triggered based on a selected command, etc.)based on account information associated with the user (e.g., an accountstatus or other account information).

As an example, if the user is interacting with the user interface of theuser’s mobile application, the account information may be obtained basedon the user having been authenticated with the mobile application. Asanother example, the mobile application may be a financial servicesapplication for managing one or more accounts of the user, and theuser’s selection of one or more presented dialogue items (e.g., aquestion, a command, or other dialogue item) may affect servicing of theuser’s accounts. In one use case, if the dialogue item is a command toplace a temporary hold on use of an account for new transactions, andthe user selects the temporary hold command, the user may be presentedwith a confirmation prompt to confirm the temporary hold. Upon obtainingthe user’s confirmation, the temporary hold may be activated for any newtransactions on the particular user account.

In some embodiments, model subsystem 114 may provide user activityinformation associated with a user as input to a prediction model toobtain one or more predicted intents of the user, and presentationsubsystem 118 may cause one or more dialogue items (e.g., questions,statements, etc.) to be presented on a user interface (e.g., a chatinterface) based on the predicted intents of the user. Additionally, oralternatively, account information or other information associated withthe user may be provided as input to the prediction model to obtain thepredicted intents. As an example, dialogue subsystem 112 may select thedialogue items for the presentation on the user interface based on thepredicted intents. As a further example, for each intent of thepredicted intents, a dialogue item may be selected from a dialogue itemset based on the dialogue item matching the intent. The dialogue itemset may include a predetermined set of questions or statementsassociated with the user, a predetermined set of questions or statementsassociated with a group (e.g., a similarity cluster to which the user isallocated, a demographic group to which the user is designated, or othergroup), or other predetermined dialogue item set. In one use case, forexample, the dialogue item set may include dialogue items that aremapped to one or more intents, and a dialogue item may be selected forpresentation to the customer based on the dialogue item being mapped toa predicted intent of the user.

In some embodiments, the dialogue item set (from which one or moredialogue items may be selected for presentation to the user) may bedetermined based on account information (e.g., account type, creditlimit, features available via the account, etc.) or other contextinformation associated with the user (e.g., a date/time of a chatinitiation request of the user, an operating system used by the user toaccess the chat session, latest activities of the user, etc.). As anexample, as shown in FIG. 3 , the selectable questions presented on chatinterfaces 302 a and 302 b to first and second customers, respectively,are different from one another. In one use case, the selectablequestions on each of the chat interfaces may be selected from a questionset that is based on the particular customer’s context information.

As an example, with respect to chat interface 302 a, the selectablequestions may be selected from a question set that is based the firstcustomer’s context information 304 a indicating that (i) the firstcustomer has a first type of credit card (e.g., “Quicksilver” card), and(ii) the card has a credit limit of five thousand dollars ($5,000). Thequestion set may be additionally or alternatively determined based onthe page view information indicating that the last three (3) pages thatthe first customer accessed was “profile - security,” “profile -alerts,” and “profile - settings - language.” As another example, withrespect to chat interface 302 b, the selectable questions may beselected from a question set that is based the second customer’s contextinformation 304 b indicating that (i) the second customer has a secondtype of credit card (e.g., “Savor” card), and (ii) the card has a creditlimit of twenty thousand dollars ($20,000). The question set may beadditionally or alternatively determined based on the page viewinformation indicating that the last three (3) pages that the secondcustomer accessed was “account summary,” “preferences - security,” and“preferences - alerts.”

As discussed herein, the user activity information may include page viewinformation related to page views of the user, service interactioninformation related to interactions of the user with one or moreservices, transaction information related to transactions of the user,or other user activity information. As an example, the page viewinformation may indicate (i) labels assigned to pages accessed by theuser (e.g., desktop web or mobile pages access by the user), (ii) labelsassigned to sections or other portions of such accessed pages, (iii)title or other text of such accessed pages, (iv) frequencies of suchaccesses within a given time period, (v) summary information regardingsuch page accesses, or (vi) other page view information. The serviceinteraction information may indicate (i) information submitted by theuser to a service (e.g., search queries, scheduled event information,etc.), (ii) authentication attempts of the user (e.g., successfullogins, login failures, etc.), (iii) dates/times of such interactions,(iv) summary information of such interactions, or (v) other serviceinteraction information. The transaction information may indicate (i)transactions of the user, (ii) payment methods used in suchtransactions, (iii) transaction types of such transactions, (iv)products or services purchased via such transactions, (v) merchants withwhich such transactions took place, (vi) summary information regardingsuch transactions, such as a ranking of top merchants by number oftransactions over a given time period, or (vii) other transactioninformation.

In some embodiments, model subsystem 114 may obtain an intent set from aprediction model (e.g., to which user activity information associatedwith a user was provided) and select one or more predicted intents fromthe intent set, and dialogue subsystem 112 may obtain one or moredialogue items for presentation on a user interface based on thepredicted intents (e.g., by generating the dialogue items based on thepredicted intents, by selecting the dialogue items from a dialogue itemset based on the predicted intents, etc.). As an example, for eachpredicted intent of the intent set, the prediction model may generate aprobability of matching a current intent of the user. In one use case,the predicted intents may be selected from the intent set based on adetermination that the probabilities of the predicted intents aregreater than or equal to the probabilities of one or more otherpredicted intents of the intent set. Additionally, or alternatively, thepredicted intents may be selected from the intent set based on adetermination that the probabilities of the predicted intents satisfyone or more probability thresholds (e.g., greater than or equal to aminimum confidence score threshold).

In some embodiments, where a predicted intent is associated with aconfidence score or other probability, and a dialogue item is obtainedfor presentation on a user interface based on the predicted intent,presentation subsystem 118 may determine a presentation order for thedialogue items based on the associated probabilities and cause thedialogue items to be presented in accordance with the presentationorder. As an example, with respect to FIG. 5 , if the predeterminednumber of questions (e.g., “Quick Replies” (QR)) to be presented as alist on the user interface is five questions, and the presentation ordercorresponds to a descending order of confidence, the list of fivequestions may be presented on the user interface in descending orderwith respect to their corresponding intents’ confidence scores. On theother hand, as another example, if the presentation order corresponds toan ascending order of confidence, the list of five questions may bepresented on the user interface in ascending order with respect to theircorresponding intents’ confidence scores. In some embodiments, when userselections of presented dialogue items are used to train or configure aprediction model for a population or group, the basis on which thepresentation order is determined may be varied for different portions ofthe population or group to reduce potential selection bias related tothe ordering of the presented dialogue items. As indicated in FIG. 5 ,for example, at least some individuals of a population may be shown fivequestions in descending order of confidence, at least some individualsof the population may be shown five questions in ascending order ofconfidence, etc.

In some embodiments, the presentation order for the dialogue items mayadditionally or alternatively be based on one or more other criteria. Asan example, with respect to FIG. 5 , the presentation order may berandomly generated order. In some embodiments, such randomization may bea pseudo-randomization (e.g., by executing one or more RdRandinstructions and applying one or more seed values or via otherrandomization techniques to randomly generate the noise data). As anexample, the presentation order may be determined based on suchrandomization when user selections of presented dialogue items are usedto train or configure a prediction model for a population or group toreduce potential selection bias related to the ordering of the presenteddialogue items.

In some embodiments, presentation subsystem 118 may cause a first subsetof dialogue items to be presented on a user interface, where at leastone of the dialogue items is a selectable dialogue item that enablespresentation of a second subset of dialogue items (e.g., “More Options”mechanism that, when activated, triggers presentation of the secondsubset). As an example, the first subset of dialogue items may includethe following dialogue items: (i) “How do I activate my new card?”, (ii)“Can Ireplace my lost card?”, (iii) “Can I increase my credit limit?”,(iv) “What’s my reward balance?”, (v) “Will I pay a foreign transactionfee?”, and (vi) “More Options”. In one use case, when “More Options” isselected by a user, one or more additional selectable questions may bepresented after the foregoing first subset of questions (e.g., to showsuch additional options together with the first subset of questions). Inanother use case, when “More Options” is selected by the user, theadditional selectable questions may be presented before the foregoingfirst subset of questions or presented such that the additionalselectable questions are interlaced between the first subset ofquestions. In another use case, when “More Options” is selected by theuser, the additional selectable questions may be presented in lieu ofthe first subset of questions such that the additional selectablequestions replaces the first subset of questions on the user interface(e.g., to reduce the amount of interface space utilized by the presentedselectable questions). In a further use case, the “More Options”mechanism may be maintained after additional selectable questions arepresented on the user interface to enable the user to triggerpresentation of one or more additional subsets of questions (or otherdialogue items) on the user interface.

In some embodiments, where at least one of the dialogue items (of afirst subset of dialogue items presented to a user) is a selectabledialogue item that enables presentation of a second subset of dialogueitems, the additional dialogue items (of the second subset) may beobtained based on one or more predicted intents of the user. As anexample, where the dialogue items of the first subset are obtained basedon a first subset of predicted intents (from a prediction model), theadditional dialogue items of the second subset may be obtained based ona second subset of predicted intents. As an example, dialogue subsystem112 may select the additional dialogue items for the presentation on theuser interface based on the additional predicted intents. As a furtherexample, for each intent of the additional predicted intents, a dialogueitem may be selected from a dialogue item set based on the dialogue itemmatching the intent.

In some embodiments, the additional predicted intents (e.g., on whichselection of the additional dialogue items are based) may be selectedfrom an intent set obtained from a prediction model. As an example, foreach predicted intent of the intent set, the prediction model maygenerate a probability of matching a current intent of the user. In oneuse case, the additional predicted intents may be selected from theintent set based on a determination that the probabilities of theadditional predicted intents are greater than or equal to theprobabilities of one or more other remaining predicted intents of theintent set (e.g., predicted intents that remain after the first subsetof predicted intents were selected). Additionally, or alternatively, theadditional predicted intents may be selected from the intent set basedon a determination that the probabilities of the additional predictedintents satisfy one or more probability thresholds (e.g., greater thanor equal to a minimum confidence score threshold).

In some embodiments, one or more categories may be determined for one ormore predicted intents of a user, and the predicted intents may be usedto present one or more dialogue items based on the categories associatedwith the predicted intents. As an example, such categories may includetopics related to the predicted intents, tiers in which probabilities ofthe predicted intents resides, or other categories. In some embodiments,the predicted intents may be assigned to one or more intent sets (orsubsets) based on the categories associated with the predicted intents.As an example, at least some predicted intents may be assigned to afirst set of predicted intents based on similarities between thecategories associated with the predicted intents of the first set, atleast some predicted intents may be assigned to a second set ofpredicted intents based on similarities between the categoriesassociated with the predicted intents of the second set, at least somepredicted intents may be assigned to a third set of predicted intentsbased on similarities between the categories associated with thepredicted intents of the third set, and so on. In one use case, forexample, the predicted intents may be assigned such that (i) the firstset of predicted intents includes predicted intents associated withprobabilities (e.g., confidence scores or other probabilities) in afirst tier (e.g., first score tier or other tier), (ii) the second setof predicted intents includes predicted intents associated withprobabilities in a second tier (e.g., second score tier or other tier),(iii) the third set of predicted intents includes predicted intentsassociated with probabilities in a third tier (e.g., third score tier orother tier), and so on.

As another example, at least some predicted intents may be assigned to afirst set of predicted intents based on differences between thecategories associated with the predicted intents of the first set, atleast some predicted intents may be assigned to a second set ofpredicted intents based on differences between the categories associatedwith the predicted intents of the second set, at least some predictedintents may be assigned to a third set of predicted intents based ondifferences between the categories associated with the predicted intentsof the third set, and so on. In one use case, for example, the predictedintents may be assigned such that (i) the first set of predicted intentsincludes two or more predicted intents that are each associated with aprobability (e.g., confidence score or other probability) in a tier(e.g., score tier or other tier) different from a probability associatedwith another one of the predicted intents of the first set, (ii) thesecond set of predicted intents includes two or more predicted intentsthat are each associated with a probability in a different one of thetiers (to which the probabilities associated with the predicted intentsof the first set respectively correspond), (iii) the third set ofpredicted intents two or more predicted intents that are each associatedwith a probability in a different one of the tiers, (iv) etc.

In a further use case, among five tiers, the tiers may respectivelyinclude (i) confidence scores in the highest 20% of scores associatedwith the predicted intents (e.g., confidence scores associated with thepredictions of a user’s current intent), (ii) confidence scores in thenext highest 20% of such scores, (iii) confidence scores in the middle20% of such scores, (iv) confidence scores in the second-lowest 20% ofsuch scores, and (v) confidence scores in the lowest 20% of such scores.As an example, among predicted intents with confidence scores between49% and 98.9%, the first set of predicted intents may include predictedintents with confidence scores between 89% to 98.9%, the second set ofpredicted intents may include predicted intents with confidence scoresbetween 79% to 88.9%, the third set of predicted intents may includepredicted intents with confidence scores between 69% to 78.9%, thefourth set of predicted intents may include predicted intents withconfidence scores between 59% to 68.9%, and the fifth set of predictedintents may include predicted intents with confidence scores between 49%to 58.9%.

In some embodiments, model subsystem 114 may obtain one or morepredicted intents of a user via a prediction model (e.g., based on useractivity information associated with the user), and dialogue subsystem112 may obtain one or more dialogue items for presentation to the userbased on the predicted intents. In some embodiments, model subsystem 114may obtain predicted intents from the prediction model and assign thepredicted intents to one or more intent sets (or subsets) based oncategories associated with the predicted intents. Dialogue subsystem 112may use a first set of predicted intents (from the intent sets) toobtain one or more dialogue items for presentation to the user. As anexample, for each intent of the first set of predicted intents, dialoguesubsystem 112 may generate a dialogue item based on the intent or selectthe dialogue item from a dialogue item set based on the dialogue itemmatching the intent. As indicated above, in one use case, the first setof predicted intents may include an intent with a confidence score in afirst tier (e.g., the highest confidence score in such tier, a randomconfidence score in such tier, etc.), an intent with a confidence scorein a second tier, an intent with a confidence score in a third tier, anintent with a confidence score in a fourth tier, and an intent with aconfidence score in a fifth tier. For each of the foregoing intents ofthe first set, a dialogue item matching the intent may be obtained andpresented to the user.

In some embodiments, dialogue subsystem 112 may obtain a request from auser to initiate a chat session. Responsive to the request, dialoguesubsystem 112 may initiate the chat session, and presentation subsystem118 may provide a chat interface for presentation to the user. In someembodiments, responsive to the request, dialogue subsystem 112 maytrigger model subsystem 114 to obtain user activity informationassociated with the user (e.g., related to the user’s latest activitiesprior to the chat initiation request or to other activities of the user)and provide the user activity information to a prediction model toobtain one or more predicted intents of the user. Based on the predictedintents of the user, dialogue subsystem 112 may obtain one or moredialogue items for the presentation on the chat interface. In someembodiments, the dialogue items may be presented on the chat interfaceupon the loading of the chat interface or within a short period of timeof the chat initiation request (e.g., within one second of the chatinitiation request, within five seconds of the chat initiation request,within ten seconds of the chat initiation request, within twenty secondsof the chat initiation request, etc.). In this way, for example, thedialogue items may be presented on the chat interface without the userproviding any user input specifically requesting the dialogue items,without the user providing any user input in the chat interface (e.g.,without the user having to ask any questions or provide answers toquestions in the chat interface), etc.

In one use case, with respect to FIG. 4 , a customer may click on, forexample, a chat-buddy icon, a chat interface button, or a “Need Help?”button on a mobile application interface, a desktop web interface, orother interface, which may initiate a session involving one or morecomponents of a personal assistance platform by sending a request (e.g.,a chat initiation request) to a receiver of the personal assistanceplatform. The receiver may send a launch request to a controller of thepersonal assistance platform. In some embodiments, the user may alreadybe authenticated in a mobile authentication or a website account, andthe controller may then retrieve and send initial customer informationassociated with the customer to a dialogue manager of the personalassistance platform. In some embodiments, the controller may retrieveand send the initial customer information associated with the customerto the dialogue manager responsive to authenticating the user (e.g.,without waiting for a customer to initiate a chat session) to initiatepre-generation of one or more selectable questions in anticipation of auser requesting to initiate a chat session. Such initial customerinformation may include (i) types of accounts the customer has with oneor more entities associated with the personal assistance platform (e.g.,checking accounts, savings accounts, or other account types), (ii)attributes or other details associated with such accounts, (iii)preference information (e.g., default preferences, user-designatedpreferences, etc.), or (iv) other customer information. The dialoguemanager may request a predetermined number of questions from arecommendation engine of the personal assistance platform. In doing so,for example, the dialogue manager may provide at least some of theinitial customer information or other details (e.g., information thatthe dialogue manager derived from the initial customer information) tothe recommendation engine. The recommendation engine may call a dataorchestrator of the personal assistance platform to obtain the customeractivity information associated with the customer (e.g., page viewinformation, service interaction information, transaction information,etc.). As an example, the data orchestrator may call a DCPI API (DataCenter Physical Infrastructure application programming interface) toobtain page view information associated with the customer. Uponretrieval, the DCPI API may return the page view information (e.g., thelatest page views of the customer) to the data orchestrator. The dataorchestrator may then return the customer activity information to therecommendation engine.

Still with respect to FIG. 4 , the recommendation engine may run amachine learning model with the customer activity information (e.g.,pre-chat customer activity information) to obtain one or more predictedintents of the customer (e.g., a predetermined number of predictedintents). As an example, the recommendation engine may provide thecustomer activity information as input to the machine learning model tocause the machine learning model to generate the predicted intents. Uponobtaining the predicted intents, the recommendation engine may providethe predicted intents to the dialogue manager, and the dialogue managermay forward the predicted intents to a presentation manager of thepersonal assistance platform. The presentation manager may then call acontent manager of the personal assistance platform to translate thepredicted intents into questions that are to be presented on the chatinterface as selectable questions. When the content manager sends thequestions to the presentation manager, the presentation manager maycause a welcome message and the questions to be presented on the chatinterface (e.g., by sending the welcome message and questions to theappropriate chat interface manager). In one use case, as shown in FIG. 4, the welcome message may include “Hi there! I’m Eno, your Capital Oneassistant. I’m new, so I typically respond best to short requests. Askme a question, or try one of these” and the questions may include: (i)“How do I activate my new card?”, (ii) “Can I replace my lost card?”,(iii) “Can I increase my credit limit?”, (iv) “What’s my rewardbalance?”, and (v) “Will I pay a foreign transaction fee?”. In someembodiments, where the selectable questions are pre-generated inanticipation of a user requesting to initiate a chat session, thepresentation manager may retain the one or more selectable questions fora predetermined duration and then cause the questions to be presentedupon a user request to initiate a chat session.

In some embodiments, dialogue subsystem 112 may obtain one or moredialogue items via a prediction model, and presentation subsystem 118may cause the dialogue items to be presented automatically on a userinterface for a user (e.g., without any user input from the user thatspecifically requests the dialogue items, without any user input fromthe user that specifically requests initiation of a chat session, etc.).As an example, prior to obtaining a chat initiation request from theuser, the dialogue items may be presented on the user interface (e.g.,in a sub-window of the user interface). In one use case, the user mayselect at least one of the dialogue items (or a chat interface icon orother mechanism) to initiate a chat session and cause a chat interfaceto be presented to the user. In a further use case, upon such userselection, one or more of the dialogue items (e.g., the selecteddialogue item and/or the other dialogue items) may be presented in thechat interface. Additionally, or alternatively, a response to theselected dialogue item (e.g., a response to a selected question) may begenerated and presented on the chat interface.

In some embodiments, where a predicted intent is associated with aconfidence score or other probability, and a dialogue item is obtainedfor presentation on a user interface for a user based on the predictedintent, presentation subsystem 118 may cause the dialogue item to bepresented on a user interface based on the probability associated withthe predicted item (to which the dialogue item corresponds) such thatthe dialogue item is automatically presented on the user interface priorto the user initiating a chat session (e.g., without any user input fromthe user that specifically requests the dialogue item, without any userinput from the user that specifically requests initiation of a chatsession, etc.). In one use case, one or more dialogue items may bepresented based on a determination that the probabilities of thecorresponding predicted intents are greater than or equal to theprobabilities of one or more other predicted intents of an intent set.Additionally, or alternatively, the dialogue items may be presentedbased on a determination that the probabilities of the correspondingpredicted intents satisfy one or more probability thresholds (e.g.,greater than or equal to a confidence score threshold for presentationon the user interface prior to the user initiating a chat session). Asan example, if a confidence score related to a question (or otherdialogue item) is high enough, the question may be automaticallypresented on the user interface (e.g., in a sub-window of the userinterface) prior to the user submitting a request for a chat session.Upon selecting the presented question, a chat interface may be loaded,and the question and a response to the question may be presented on thechat interface.

In some embodiments, model subsystem 114 may train or configure aprediction model to facilitate a conversation with or assist one or moreusers. In some embodiments, model subsystem 114 may obtain page viewinformation, service interaction information, transaction information,or other user activity information associated with a user and providesuch information as input to a prediction model to generate predictions(e.g., related to an intent of the user, such as a goal of the user, aquestion or statement that the user intends to submit, etc.).Additionally, or alternatively, account information or other informationassociated with the user may be provided as input to the predictionmodel to generate such predictions. Feedback subsystem 116 may providereference feedback to the prediction model, and the prediction model mayupdate one or more portions of the prediction model based on thepredictions and the reference feedback. In one use case, where theprediction model includes a neural network, the neural network mayassess its predictions (e.g., its predicted intents, their associatedconfidence scores, or other probabilities, etc.) against the referencefeedback (e.g., verified intents). The neural network may then updateits weights, biases, or other parameters based on the predictionassessment. In some embodiments, the foregoing operations for updatingthe prediction model may be performed with a training dataset withrespect to one or more users (e.g., a training dataset associated with agiven user to specifically train or configure the prediction model forthe given user, a training dataset associated with a given cluster,demographic, or other group to specifically train or configure theprediction model for the given group, or other training dataset).

As an example, where the prediction model generates predictions based onuser activity information coinciding with a given time period, one ormore verified intents associated with such user activities may beprovided as reference feedback to the prediction model. In one use case,a particular goal may be verified as the user’s intent (e.g., via userconfirmation of the goal, via one or more subsequent actionsdemonstrating such goal, etc.) when the user was browsing one or morepages or taking one or more other actions via one or more services. Theforegoing user activities may be provided as input to the predictionmodel to cause the prediction model to generate predictions of theuser’s intent, and the verified goal may be provided as referencefeedback to the prediction model to update the prediction model. In thisway, for example, the prediction model may be trained or configured togenerate more accurate predictions.

In some embodiments, presentation subsystem 118 may cause one or moredialogue items (e.g., questions, statements, etc.) to be presented on auser interface based on one or more predicted intents of a user (e.g.,provided via a prediction model), and dialogue subsystem 112 may obtaina user selection of a first dialogue item (of the dialogue items) viathe user interface. Based on the user selection and the first dialogueitem corresponding to a first intent (of the predicted intents) (e.g.,the first dialogue matches the first intent), feedback subsystem 116 mayuse the first intent to update one or more configurations of theprediction model (e.g., one or more weights, biases, or other parametersof the prediction model). In one use case, feedback subsystem 116 mayprovide the first intent as reference feedback to the prediction model,and, in response, the prediction model may assess its predicted intents(and/or their associated probabilities) against the first intent (and/orits associated probabilities). Based on its assessment, the predictionmodel may update one or more weights, biases, or other parameters of theprediction model. In this way, for example, the user selection of thepresented dialogue items may be used to further train or configure theprediction model (e.g., specifically for the user, specifically for agroup associated with the user, etc.).

In some embodiments, where the user does not select a presented dialogueitem (or selects a dialogue item indicating that none of the dialogueitem corresponds to the user’s current intent, e.g., “None of these”) orprovides a different response (e.g., a user input string different fromthe presented dialogue items), the foregoing response (or lack thereof)may be used to update one or more portions of the prediction model, anintent set from which one or more intents is to be predicted, or adialogue item set from which one or more dialogue items may be selected.As an example, when the user selects none of the presented dialogueitems (derived from a predicted intent) and provides a natural languageinput (e.g., a question or statement formulated by the user), dialoguesubsystem 112 may perform natural language processing on the naturallanguage input. Based on the natural language processing, dialoguesubsystem 112 may determine one or more intents associated with thenatural language input or one or more dialogue items to be added to thedialogue item set. In one use case, for example, the intent set or thedialogue item set may be subsets of larger collection of potentialintents and dialogue items, and the intent set or the dialogue item setsmay be updated based on the user’s responses so that the correctdialogue item(s) may be presented when the user returns in the same orsubstantially similar circumstance.

In some embodiments, where the user selects a presented dialogue itemcorresponding to a predicted intent (e.g., obtained from a predictionmodel), feedback subsystem 116 may determine a feedback score associatedwith the predicted intent (e.g., based on the user selecting thecorresponding dialogue item) and use the feedback score to update one ormore configurations of the prediction model (e.g., one or more weights,biases, or other parameters of the prediction model). In one use case,feedback subsystem 116 may provide the feedback score as referencefeedback to the prediction model, and, in response, the prediction modelmay assess its predicted intents (and/or their associated probabilities)based on the feedback score. Based on its assessment, the predictionmodel may update one or more weights, biases, or other parameters of theprediction model.

In some embodiments, feedback subsystem 116 may determine the feedbackscore for the predicted intent based on a probability associated withthe predicted intent, a category associated with the predicted intent,or other criteria. As an example, the feedback score may be a confidencescore associated with the predicted intent, or the feedback score may becalculated based on the confidence score. As another example, where thepredicted intent is associated with a probability (e.g., a confidencescore or other probability) in a given tier, feedback subsystem 116 maydetermine the feedback score based on the tier in which the probabilityof the predicted intent resides.

As indicated above, in one use case, a first set of predicted intentsmay include an intent with a confidence score in a first tier (e.g., thehighest confidence score in such tier, a random confidence score in suchtier, etc.), an intent with a confidence score in a second tier, anintent with a confidence score in a third tier, an intent with aconfidence score in a fourth tier, and an intent with a confidence scorein a fifth tier. In a further use case, among five tiers, the tiers mayrespectively include (i) confidence scores in the highest 20% of scoresassociated with the predicted intents (e.g., confidence scoresassociated with the predictions of a user’s current intent), (ii)confidence scores in the next highest 20% of such scores, (iii)confidence scores in the middle 20% of such scores, (iv) confidencescores in the second-lowest 20% of such scores, and (v) confidencescores in the lowest 20% of such scores. In other use cases, otherdistribution of such scores (e.g., percentages different from theforegoing use case, varying percentages for one or more of such tiers,etc.) may be used. For each of the foregoing intents of the first set, adialogue item matching the intent may be obtained and presented to theuser. Responsive to the user selecting a presented dialogue item, thefeedback score associated with the matching predicted intent may be usedto update the prediction model. In this way, for example, rather thansimply presenting dialogue items matching the highest overall confidencescores (or the predicted intents having such confidence scores), thefeedback score corresponding to the appropriate tier may be used totrain or update the prediction model.

Example Flowchart(s)

The example flowchart(s) described herein of processing operations ofmethods that enable the various features and functionality of the systemas described in detail above. The processing operations of each methodpresented below are intended to be illustrative and non-limiting. Insome embodiments, for example, the methods may be accomplished with oneor more additional operations not described, and/or without one or moreof the operations discussed. Additionally, the order in which theprocessing operations of the methods are illustrated (and describedbelow) is not intended to be limiting.

In some embodiments, the methods may be implemented in one or moreprocessing devices (e.g., a digital processor, an analog processor, adigital circuit designed to process information, an analog circuitdesigned to process information, a state machine, and/or othermechanisms for electronically processing information). The processingdevices may include one or more devices executing some or all of theoperations of the methods in response to instructions storedelectronically on an electronic storage medium. The processing devicesmay include one or more devices configured through hardware, firmware,and/or software to be specifically designed for execution of one or moreof the operations of the methods.

FIG. 6 shows a flowchart of a method 600 of facilitating chat dialoguevia pre-chat customer intent, in accordance with one or moreembodiments. In an operation 602, a chat initiation request may beobtained from a customer. As an example, upon obtaining the chatinitiation request, a chat session may be initiated, and a chatinterface may be provided for presentation to the customer. Operation602 may be performed by a subsystem that is the same as or similar todialogue subsystem 112, in accordance with one or more embodiments.

In an operation 604, latest activity information associated with thecustomer may be provided as input to a neural network to obtainpredicted current intents of the customer. As an example, the latestactivity information may be provided as input to the neural networkresponsive to the chat initiation request. As another example, thelatest activity information may be provided as input to the neuralnetwork on a periodic basis, in accordance with a schedule, or based onone or more other automated triggers to obtain one or more outputs fromthe neural network (e.g., via which predicted intents coinciding withthe chat initiation request are obtained). The latest activityinformation may include page view information related to recent pageviews of the customer, service interaction information related to recentinteractions of the customer with one or more services, transactioninformation related to recent transactions of the customer, or otheractivity information associated with the customer. Operation 604 may beperformed by a subsystem that is the same as or similar to modelsubsystem 114, in accordance with one or more embodiments.

In an operation 606, for each intent of the predicted current intents, acandidate question may be selected from a question set based on thecandidate question matching the intent. As an example, the question setmay include questions that are mapped to one or more intents, and aquestion may be selected for presentation to the customer based on thequestion being mapped to a predicted current intent of the customer.Operation 606 may be performed by a subsystem that is the same as orsimilar to dialogue subsystem 112, in accordance with one or moreembodiments.

In an operation 608, the candidate questions may be presented on thechat interface. As an example, within ten seconds (or three seconds oreven less) of the chat initiation request, the candidate questions maybe simultaneously presented on the chat interface. Operation 608 may beperformed by a subsystem that is the same as or similar to presentationsubsystem 118, in accordance with one or more embodiments.

In an operation 610, a user selection of a first question of thecandidate questions may be obtained via the chat interface, where thefirst question matches a first intent of the predicted current intents.As an example, upon the candidate questions being presented via the chatinterface, the customer may select one of the presented questions orsubmit another question via the chat interface, and the customer’sactions may be obtained as the customer response in the chat interface.Operation 610 may be performed by a subsystem that is the same as orsimilar to dialogue subsystem 112, in accordance with one or moreembodiments.

In an operation 612, based on the user selection of the first question,a response to the first question may be presented on the chat interface.As an example, one or more answers may be mapped to each candidatequestion of the question set. Upon selection of the first question, atleast one answer mapped to the first question may be selected andpresented as a response to the user’s question. Operation 612 may beperformed by a subsystem that is the same as or similar to presentationsubsystem 118, in accordance with one or more embodiments.

In an operation 614, based on the user selection of the first question,the first intent may be provided as reference feedback to the neuralnetwork to train the neural network. As an example, the neural networkmay update one or more configurations of the neural network (e.g.,weights, biases, or other parameters of the neural network) based on thefirst intent. As a further example, the neural network may assess itspredictions (e.g., the predicted current intents and their associatedconfidence scores) against the selected first intent and its associatedconfidence score (e.g., probability that the predicted first intentreflects a current intent of the customer). The neural network may thenupdate its weights, biases, or other parameters based on the predictionassessment. Operation 614 may be performed by a subsystem that is thesame as or similar to feedback subsystem 116, in accordance with one ormore embodiments.

FIG. 7 shows a flowchart of a method 700 of providing additionaldialogue items in response to negative feedback related to presenteddialogue items, in accordance with one or more embodiments. In anoperation 702, one or more candidate questions may be presented on achat interface to a customer. As an example, the candidate questions maybe provided for presentation on the chat interface based on each of thecandidate questions matching at least one predicted intent of a firstset of predicted intents (e.g., obtained from a neural networkresponsive to providing the neural network with latest activityinformation associated with the customer). Operation 702 may beperformed by a subsystem that is the same as or similar to presentationsubsystem 118, in accordance with one or more embodiments.

In an operation 704, negative feedback related to the candidatequestions may be obtained via the chat interface. As an example, thenegative feedback may correspond to a user request for further options.In one use case, upon being presented with the candidate questions, thecustomer may select a “More Options” mechanism, thereby indicating thatthe candidate questions do not match the customer’s current intent.Operation 704 may be performed by a subsystem that is the same as orsimilar to dialogue subsystem 112, in accordance with one or moreembodiments.

In an operation 706, for each intent of a second set of predictedintents, an additional candidate question may be selected from aquestion set based on the additional candidate question matching theintent. As an example, the candidate questions that are initiallypresented to the customer may have been initially selected forpresentation to the customer based on the initial candidate questionsmatching the intents of a first set of predicted intents. Responsive tothe negative feedback (e.g., indicating that the initial candidatequestions do not match the current intent of the customer), the secondset of predicted intents may be used to select the additional candidatequestions from the question set for presentation to the customer. As afurther example, the question set may include questions that are mappedto one or more intents, and a question may be selected for presentationto the customer based on the question being mapped to a predicted intentof the customer. Operation 706 may be performed by a subsystem that isthe same as or similar to dialogue subsystem 112, in accordance with oneor more embodiments.

In an operation 708, based on the negative feedback, the additionalcandidate questions may be presented on the chat interface forpresentation to the customer. Operation 708 may be performed by asubsystem that is the same as or similar to presentation subsystem 118,in accordance with one or more embodiments.

FIG. 8 shows a flowchart of a method 800 of generating category-basedsets of predicted intents to facilitate dialogue generation, inaccordance with one or more embodiments. In an operation 802, predictedintents of a customer and confidence scores associated with thepredicted intents may be obtained. As an example, latest activityinformation associated with the customer may be provided as input to aneural network to obtain the predicted intents of the customer. Thelatest activity information may include page view information related torecent page views of the customer, service interaction informationrelated to recent interactions of the customer with one or moreservices, transaction information related to recent transactions of thecustomer, or other activity information associated with the customer.Operation 802 may be performed by a subsystem that is the same as orsimilar to model subsystem 114, in accordance with one or moreembodiments.

In an operation 804, a score category may be determined for each of theconfidence scores associated with the predicted intents. As an example,with respect to each predicted intent, the score category may correspondto the tier in which the confidence score of the predicted intentresides. Operation 804 may be performed by a subsystem that is the sameas or similar to model subsystem 114, in accordance with one or moreembodiments.

In an operation 806, the predicted intents may be assigned to respectivesets of predicted intents such that each of the respective sets includespredicted intents across multiple score categories. As an example, basedon the assignment, a first set of predicted intents may include at leastone predicted intent associated with a confidence score in a firstcategory, at least one predicted intent associated with a confidencescore in a second category (e.g., different from the first category), atleast predicted intent associated with a confidence score in a thirdcategory (e.g., different from the first and second categories), and soon. The second set of predicted intents may include at least anotherpredicted intent associated with a confidence score in the firstcategory, at least another predicted intent associated with a confidencescore in the second category, at least another predicted intentassociated with a confidence score in the third category, and so on.Operation 806 may be performed by a subsystem that is the same as orsimilar to model subsystem 114, in accordance with one or moreembodiments.

In an operation 808, for each intent of a first set of predicted intents(of the sets of predicted intents), a candidate question may be selectedfrom a question set based on the candidate question matching the intent.As an example, the question set may include questions that are mapped toone or more intents, and a question may be selected for presentation tothe customer based on the question being mapped to a predicted intent ofthe customer. Operation 808 may be performed by a subsystem that is thesame as or similar to dialogue subsystem 112, in accordance with one ormore embodiments.

In an operation 810, the candidate questions may be presented on a chatinterface for presentation to the customer. As an example, within tenseconds (or three seconds or even less) of the chat initiation request,the candidate questions may be simultaneously presented on the chatinterface. Operation 810 may be performed by a subsystem that is thesame as or similar to presentation subsystem 118, in accordance with oneor more embodiments.

In some embodiments, the various computers and subsystems illustrated inFIG. 1 may include one or more computing devices that are programmed toperform the functions described herein. The computing devices mayinclude one or more electronic storages (e.g., prediction database(s)132, which may include training data database(s) 134, model database(s)136, etc., or other electronic storages), one or more physicalprocessors programmed with one or more computer program instructions,and/or other components. The computing devices may include communicationlines or ports to enable the exchange of information within a network(e.g., network 150) or other computing platforms via wired or wirelesstechniques (e.g., Ethernet, fiber optics, coaxial cable, WiFi,Bluetooth, near field communication, or other technologies). Thecomputing devices may include a plurality of hardware, software, and/orfirmware components operating together. For example, the computingdevices may be implemented by a cloud of computing platforms operatingtogether as the computing devices.

The electronic storages may include non-transitory storage media thatelectronically stores information. The storage media of the electronicstorages may include one or both of (i) system storage that is providedintegrally (e.g., substantially non-removable) with servers or clientdevices or (ii) removable storage that is removably connectable to theservers or client devices via, for example, a port (e.g., a USB port, afirewire port, etc.) or a drive (e.g., a disk drive, etc.). Theelectronic storages may include one or more of optically readablestorage media (e.g., optical disks, etc.), magnetically readable storagemedia (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.),electrical charge-based storage media (e.g., EEPROM, RAM, etc.),solid-state storage media (e.g., flash drive, etc.), and/or otherelectronically readable storage media. The electronic storages mayinclude one or more virtual storage resources (e.g., cloud storage, avirtual private network, and/or other virtual storage resources). Theelectronic storage may store software algorithms, information determinedby the processors, information obtained from servers, informationobtained from client devices, or other information that enables thefunctionality as described herein.

The processors may be programmed to provide information processingcapabilities in the computing devices. As such, the processors mayinclude one or more of a digital processor, an analog processor, adigital circuit designed to process information, an analog circuitdesigned to process information, a state machine, and/or othermechanisms for electronically processing information. In someembodiments, the processors may include a plurality of processing units.These processing units may be physically located within the same device,or the processors may represent processing functionality of a pluralityof devices operating in coordination. The processors may be programmedto execute computer program instructions to perform functions describedherein of subsystems 112-118 or other subsystems. The processors may beprogrammed to execute computer program instructions by software;hardware; firmware; some combination of software, hardware, or firmware;and/or other mechanisms for configuring processing capabilities on theprocessors.

It should be appreciated that the description of the functionalityprovided by the different subsystems 112-118 described herein is forillustrative purposes, and is not intended to be limiting, as any ofsubsystems 112-118 may provide more or less functionality than isdescribed. For example, one or more of subsystems 112-118 may beeliminated, and some or all of its functionality may be provided byother ones of subsystems 112-118. As another example, additionalsubsystems may be programmed to perform some or all of the functionalityattributed herein to one of subsystems 112-118.

Although the present invention has been described in detail for thepurpose of illustration based on what is currently considered to be themost practical and preferred embodiments, it is to be understood thatsuch detail is solely for that purpose and that the invention is notlimited to the disclosed embodiments, but, on the contrary, is intendedto cover modifications and equivalent arrangements that are within thescope of the appended claims. For example, it is to be understood thatthe present invention contemplates that, to the extent possible, one ormore features of any embodiment can be combined with one or morefeatures of any other embodiment.

The present techniques will be better understood with reference to thefollowing enumerated embodiments:

1. A method comprising: obtaining one or more dialogue items via aprediction model; causing the one or more dialogue items to be presentedon a user interface; obtaining a user response to the presentation ofthe one or more dialogue items; and causing, based on the user response,a response to the user response to be presented on the user interface.

2. The method of embodiment 1, wherein obtaining the one or moredialogue items comprises: providing user activity information associatedwith a user as input to the prediction model to obtain one or morepredicted intents of the user; and obtaining the one or more dialogueitems based on the one or more predicted intents.

3. The method of embodiment 2, wherein the user activity informationassociated with the user comprises page view information related to pageviews of the user, service interaction information related tointeractions of the user with one or more services, or transactioninformation related to transactions of the user.

4. The method of any of embodiments 1-3, wherein the user activityinformation comprises non-chat user activity information.

5. The method of embodiment 1-4, wherein the user activity informationcomprises recent user activity information.

6. The method of any of embodiments 1-5, further comprising: obtaining achat initiation request from the user, wherein the user activityinformation associated with the user is provided as input to theprediction model responsive to the chat initiation request.

7. The method of any of embodiments 1-6, further comprising: obtainingan intent set from the prediction model, wherein each intent of theintent set is associated with a probability of matching a current intentof the user; and selecting the one or more predicted intents from theintent set based on the one or more predicted intents being associatedwith higher probabilities than one or more other predicted intents ofthe intent set.

8. The method of any of embodiments 2-7, further comprising: selectingthe one or more dialogue items for the presentation on the userinterface by, for each intent of the one or more predicted intents,selecting a dialogue item from a dialogue item set based on the dialogueitem matching the intent.

9. The method of any of embodiments 2-7, further comprising: generatingthe one or more dialogue items for the presentation on the chatinterface by, for each intent of the one or more predicted intents,generating a dialogue item based on the intent.

10. The method of any of embodiments 2-9, wherein obtaining the userresponse comprises obtaining, via the user interface, a user selectionof a first dialogue item of the one or more dialogue items, the firstdialogue item matching a first intent of the one or more predictedintents, and wherein causing the response to be presented comprisescausing, based on the user selection of the first dialogue item, theresponse to the first dialogue item to be presented on the userinterface.

11. The method of embodiment 10, further comprising: using, based on theuser selection of the first dialogue item, the first intent to updateone or more configurations of the prediction model.

12. The method of any of embodiments 2-9, wherein a first set ofpredicted intents comprising the one or more predicted intents isobtained from the prediction model, and a second set of predictedintents is obtained from the prediction model, wherein obtaining theuser response comprises obtaining, via the user interface, negativefeedback related to the dialogue items.

13. The method of embodiment 12, wherein the negative feedbackcorresponds to a user request for further options.

14. The method of any of embodiments 12-13, wherein causing the responseto be presented comprises causing, based on the negative feedback andthe second set of predicted intents, additional dialogue items to bepresented on the chat interface.

15. The method of any of embodiments 12-14, further comprising:obtaining, via the chat interface, a user selection of a given dialogueitem of the additional dialogue items, the given dialogue item matchinga given intent of the second set of predicted intents; determining afeedback score associated with the given intent based on the probabilitycategory of the given intent (e.g., such that (i) the feedback score isa first feedback score based on the given intent being in the firstcategory and (ii) the feedback score is a second feedback score based onthe given intent being in the second category).

16. The method of embodiment 15, causing, based on the user selection ofthe given dialogue item, a response to the given dialogue item to bepresented on the chat interface.

17. The method of any of embodiments 15-16, further comprising: using,based on the user selection of the given dialogue item, the given intentand the feedback score to update one or more configurations of theprediction model.

18. The method of any of embodiments 12-17, further comprising:assigning the predicted intents to different sets of predicted intentsbased on probability categories associated with the predicted intentssuch that (i) the first set of predicted intents comprises at least onepredicted intent associated with a probability in a first category andat least one predicted intent associated with a probability in a secondcategory different from the first category, and (ii) the second set ofpredicted intents comprises at least another predicted intent associatedwith a probability in the first category and at least another predictedintent associated with a probability in the second category.

19. The method of any of embodiments 1-18, wherein the one or moredialogue items comprises one or more questions or statements.

20. The method of any of embodiments 1-19, wherein the prediction modelcomprises a neural network or other machine learning model.

21. A tangible, non-transitory, machine-readable medium storinginstructions that, when executed by a data processing apparatus, causesthe data processing apparatus to perform operations comprising those ofany of embodiments 1-20.

22. A system comprising: one or more processors; and memory storinginstructions that, when executed by the processors, cause the processorsto effectuate operations comprising those of any of embodiments 1-20.

What is claimed is:
 1. A system for facilitating chat dialogue, thesystem comprising: one or more processors programmed with computerprogram instructions that, when executed, cause operations comprising:obtaining, via a neural network, predicted intents of a user based onactivity information associated with the user, the predicted intentscomprising a first set of predicted intents and a second set ofpredicted intents; assigning the predicted intents to different sets ofpredicted intents based on probability categories associated with thepredicted intents such that: the first set of predicted intentscomprises at least one predicted intent associated with a probability ina first category and at least one predicted intent associated with aprobability in a second category different from the first category; andthe second set of predicted intents comprises at least another predictedintent associated with a probability in the first category and at leastanother predicted intent associated with a probability in the secondcategory; and upon initiation of a chat session with the user, causingquestions to be presented on an interface based on the first set ofpredicted intents.
 2. The system of claim 1, wherein the activityinformation associated with the user is provided as input to the neuralnetwork responsive to a chat initiation request.
 3. The system of claim1, the operations further comprising: obtaining, via the chat interface,a user selection of a given question of the questions, the givenquestion matching a given intent of the first set of predicted intents;determining a feedback score associated with the given intent based onthe probability category of the given intent such that (i) the feedbackscore is a first feedback score responsive to the given intent being inthe first category and (ii) the feedback score is a second feedbackscore responsive to the given intent being in the second category; andusing, based on the user selection of the given question, the givenintent and the feedback score to update one or more configurations ofthe neural network.
 4. The system of claim 1, wherein the activityinformation associated with the user comprises page view informationrelated to recent page views of the user, service interactioninformation related to recent interactions of the user with one or moreservices, or transaction information related to recent transactions ofthe user.
 5. A method comprising: obtaining, via a prediction model,predicted intents of a user based on activity information associatedwith the user, the predicted intents comprising a first set of predictedintents and a second set of predicted intents; assigning the predictedintents to different sets of predicted intents based on probabilitycategories associated with the predicted intents such that: the firstset of predicted intents comprises at least one predicted intentassociated with a probability in a first category and at least onepredicted intent associated with a probability in a second categorydifferent from the first category; and the second set of predictedintents comprises at least another predicted intent associated with aprobability in the first category and at least another predicted intentassociated with a probability in the second category; and uponinitiation of a chat session with the user, causing questions to bepresented on an interface based on the first set of predicted intents.6. The method of claim 5, further comprising: obtaining a chatinitiation request from the user, wherein the activity informationassociated with the user is provided as input to the prediction modelresponsive to the chat initiation request.
 7. The method of claim 5,wherein the first set of predicted intents comprises at least onepredicted intent associated with a confidence score in a first scoretier and at least one predicted intent associated with a confidencescore in a second score tier lower than the first score tier, andwherein the second set of predicted intents comprises at least anotherpredicted intent associated with a confidence score in the first scoretier and at least another predicted intent associated with a confidencescore in the second score tier.
 8. The method of claim 5, furthercomprising: obtaining, via the chat interface, a user selection of agiven question of the questions, the given question matching a givenintent of the first set of predicted intents; determining a feedbackscore associated with the given intent based on the probability categoryof the given intent such that (i) the feedback score is a first feedbackscore responsive to the given intent being in the first category and(ii) the feedback score is a second feedback score responsive to thegiven intent being in the second category; and using, based on the userselection of the given question, the given intent and the feedback scoreto update one or more configurations of the prediction model.
 9. Themethod of claim 5, further comprising: selecting the questions for thepresentation on the chat interface by, for each intent of the predictedintents, selecting a question from a question set based on the questionmatching the intent.
 10. The method of claim 5, further comprising:generating the questions for the presentation on the chat interface by,for each intent of the predicted intents, generating a question based onthe intent.
 11. The method of claim 5, wherein the activity informationassociated with the user comprises page view information related torecent page views of the user.
 12. The method of claim 5, wherein theactivity information associated with the user comprises serviceinteraction information related to recent interactions of the user withone or more services or transaction information related to recenttransactions of the user.
 13. The method of claim 5, wherein theprediction model comprises a neural network.
 14. A non-transitorycomputer-readable media comprising instructions that, when executed byone or more processors, cause operations comprising: obtaining, via aprediction model, predicted intents of a user based on activityinformation associated with the user, the predicted intents comprising afirst set of predicted intents and a second set of predicted intents;assigning the predicted intents to different sets of predicted intentsbased on probability categories associated with the predicted intentssuch that: the first set of predicted intents comprises at least onepredicted intent associated with a probability in a first category andat least one predicted intent associated with a probability in a secondcategory different from the first category; and the second set ofpredicted intents comprises at least another predicted intent associatedwith a probability in the first category and at least another predictedintent associated with a probability in the second category; and uponinitiation of a chat session with the user, causing dialogue items to bepresented on an interface based on the first set of predicted intents.15. The media of claim 14, wherein the first set of predicted intentscomprises at least one predicted intent associated with a confidencescore in a first score tier and at least one predicted intent associatedwith a confidence score in a second score tier lower than the firstscore tier, and wherein the second set of predicted intents comprises atleast another predicted intent associated with a confidence score in thefirst score tier and at least another predicted intent associated with aconfidence score in the second score tier.
 16. The media of claim 14,the operations further comprising: obtaining, via the chat interface, auser selection of a given dialogue item of the dialogue items, the givendialogue item matching a given intent of the first set of predictedintents; determining a feedback score associated with the given intentbased on the probability category of the given intent such that (i) thefeedback score is a first feedback score based on the given intent beingin the first category and (ii) the feedback score is a second feedbackscore based on the given intent being in the second category; and using,based on the user selection of the given dialogue item, the given intentand the feedback score to update one or more configurations of theprediction model.
 17. The media of claim 14, the operations furthercomprising: selecting the dialogue items for the presentation on thechat interface by, for each intent of the predicted intents, selecting adialogue item from a dialogue item set based on the dialogue itemmatching the intent.
 18. The media of claim 14, the operations furthercomprising: generating the dialogue items for the presentation on thechat interface by, for each intent of the predicted intents, generatinga dialogue item based on the intent.
 19. The media of claim 14, whereinthe activity information associated with the user comprises page viewinformation related to page views of the user.
 20. The media of claim14, wherein the prediction model comprises a neural network.